var ${objectName}FormName = '${objectName}EditForm';//维护版面form表单名称
var add${entityName}URL = '${serviceName}/${objectName}/insert.action';
var edit${entityName}URL = '${serviceName}/${objectName}/update.action';
var find${entityName}URL = '${serviceName}/${objectName}/selectByPrimaryKey.action';

erajs.onReady(function () {
    // 加载码表
    // fams.getComboboxData('#' + ${objectName}FormName, ['yesOrNo','SceneStatus']);
    // 获取List界面传入的参数
    let urlParams = erajs.Extra.getUrlVars();
    // 初始化页面 无action或查看详情时调整页面样式
    actionFlag = urlParams['action'];
    if (urlParams['action'] == 'edit') {
        select${entityName}(urlParams['primaryKey']);
    } else if (urlParams['action'] == 'detail') {
        select${entityName}(urlParams['primaryKey']);
        // 查看页面 置灰编辑界面的列表
        erajs.Extra.enableForm('#' + ${objectName}FormName, false);
    }
    initValidator();
});

/**
 * 自定义校验规则
 */
function initValidator() {
    // 加载校验文件
    erajs.loadValidationXml('../validation/validation.xml');
    erajs.prepareValidateRules(${objectName}FormName);
}


/**
 * 提交处理
 * @param formData
 */
function save${entityName}() {
    if (erajs.validateForm(${objectName}FormName)) {
        fams.showMask();
        let maskDivId = '${objectName}EditDiv';
        let param = fams.getJson($('#' + ${objectName}FormName));

        let url = erajs.baseURL() + (('add' == actionFlag) ? add${entityName}URL : edit${entityName}URL);
        fams.executeRemoteRequest(maskDivId, url, { ${objectName}: param }, function (data, errMsg) {
            if (data) {
                erajs.Extra.showInfo(erajs.getMessage('framework.EXECUTE_SUCCESS'));
                parent.currentDataGrid.reload();// 注意要对应上List.js中的onReady  currentDataGrid
                erajs.Extra.closeSelfWindow($('#${objectName}EditDiv'));
            }
            return true;
        });
        fams.hideMask();
    }
}

/**
* 获取详细信息
* @param primaryKey 主键
*/
function select${entityName}(primaryKey) {
    let maskDivId = '${objectName}EditDiv';
    let url = erajs.baseURL() + find${entityName}URL;
    let params = {
        primaryKey: primaryKey
    };
    fams.executeRemoteRequest(maskDivId, url, params, function (data, errMsg) {
        if (data && data['data']) {
            // 在设置表单值之前自定义控件
            setFormValue(data['data']);
        }
        return true;
    });
}

/**
 * 设置表单值
 * @param data
 */
function setFormValue (data) {
    erajs.Extra.loadForm('#' + ${objectName}FormName, data);
}
